﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework.Input;

namespace PokeTD
{
    public class CreepEventArgs : EventArgs
    {        
            // Constructor.
            public CreepEventArgs() {
            }
            // Dummy Event, nur um mitzuteilen, dass ein Creep gestorben ist...
    }
    public delegate void CreepEventHandler(object Sender, CreepEventArgs e);

    public class WaveEventArgs : EventArgs
    {
        // Constructor.
        public WaveEventArgs()
        {
        }
        // Dummy Event, nur um mitzuteilen, dass ein Creep gestorben ist...
    }
    public delegate void WaveEventHandler(object Sender, WaveEventArgs e);

    public class MenuItemEventArgs : EventArgs
    {
        // Constructor.
        public MenuItemEventArgs()
        {
        }
        // Dummy Event, nur um mitzuteilen, dass ein Creep gestorben ist...
    }
    public delegate void MenuItemEventHandler(object Sender, MenuItemEventArgs e);

    public class ClickedEventArgs : EventArgs
    {
        public ClickedEventArgs()
        {

        }
    }
    public delegate void ClickedEventArgsHandler(object sender, ClickedEventArgs e);

    public class DashboardButtonEventArgs : EventArgs
    {
        // Constructor.
        public DashboardButtonEventArgs()
        {
        }
        // Dummy Event, nur um mitzuteilen, dass ein Creep gestorben ist...
    }
    public delegate void DashboardButtonEventHandler(object Sender, DashboardButtonEventArgs e);

    public class TowerBuyTableEntryEventArgs : EventArgs
    {
        // Constructor.
        public TowerBuyTableEntryEventArgs()
        {
        }
        // Dummy Event, nur um mitzuteilen, dass ein Creep gestorben ist...
    }
    public delegate void TowerBuyTableEntryEventHandler(object Sender, TowerBuyTableEntryEventArgs e);

    public class BeginBuyTowerEventArgs : EventArgs
    {
        // Constructor.
        public BeginBuyTowerEventArgs()
        {
        }
        // Dummy Event, nur um mitzuteilen, dass ein Creep gestorben ist...
    }
    public delegate void BeginBuyTowerEventHandler(object Sender, BeginBuyTowerEventArgs e);

    public class TowerCreatedEventArgs : EventArgs
    {
        public TowerCreatedEventArgs()
        {
        }
    }
    public delegate void TowerCreatedEventHandler(object sender, TowerCreatedEventArgs e, Tower createdTower);

    public class GameBeatenEventArgs : EventArgs
    {
        public GameBeatenEventArgs()
        {
        }
    }
    public delegate void GameBeatenEventHandler(object sender, GameBeatenEventArgs e);

    public class GameLostEventArgs : EventArgs
    {
        public GameLostEventArgs()
        {
        }
    }
    public delegate void GameLostEventHandler(object sender, GameLostEventArgs e);
}
